/*
版权@hehung所有，转载请申明
email：1398660197@qq.com
*/
#ifndef __APP_OLED_H__
#define __APP_OLED_H__

#include "oled_drv.h"
#include <stdint.h>

/* 用于更新显示到显存，显示在OLED上 */
#define OLED_Refresh_Gram()                 oled_reflesh()
/* 用于画一个点 */
#define OLED_DrawPoint(x, y, m)             oled_draw_point(x, y, m)
/* 清空OLED */
#define OLED_Clear(c)                       oled_fill(c)

#define OLED_FILL_WHITE                     (0xFFU)
#define OLED_FILL_BLACK                     (0x00U)

typedef enum
{
	Black = 0,
	White
} e_OledColor;


extern void OLED_FillZone(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2, e_OledColor color);
extern void OLED_ShowChar(uint8_t x,uint8_t y,uint8_t chr,uint8_t size,e_OledColor color);
extern void OLED_ShowHz(uint8_t x, uint8_t y, const char hz_c[], e_OledColor color);
extern void OLED_ShowHzStringRow(uint8_t x, uint8_t y, const char *hz_s, e_OledColor color);
extern void OLED_ShowHzStringColumn(uint8_t x, uint8_t y, const char *hz_s, e_OledColor color);
extern void OLED_ShowHzFromIndex(uint8_t x,uint8_t y,uint8_t chr,e_OledColor color);
extern void OLED_HzStringFromIndex(uint8_t x,uint8_t y,uint8_t chr_S,uint8_t chr_E, e_OledColor color);
extern void OLED_ShowNum(uint8_t x,uint8_t y,uint32_t num,uint8_t len,uint8_t size, e_OledColor color);
extern void OLED_ShowString(uint8_t x,uint8_t y,const uint8_t *p,uint8_t size,e_OledColor color);
extern void OLED_DrawBmpImg(uint8_t x,
							uint8_t y,
							const uint8_t bmp[][16],
							uint32_t len,
							e_OledColor color);
extern void OLED_DrawBmpImg2(uint8_t x,
							 uint8_t y,
							 const uint8_t bmp[][8],
							 uint32_t len,
							 uint8_t size,
							 e_OledColor color);

#endif
